package com.yeyks.consumer.dal.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 用户提现订单表
 * </p>
 *
 * @author yun
 * @since 2019-10-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="CashOutOrder对象", description="用户提现订单表")
public class CashOutOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "订单号")
    @TableField("order_no")
    private String orderNo;

    @ApiModelProperty(value = "对应的操作用户ID")
    @TableField("user_id")
    private Integer userId;

    @ApiModelProperty(value = "状态，1待审核(申请中)，2审核通过(已打款)，3 审核未通过(打款失败)，4 失败")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "1：推广提现  2：微信提现")
    @TableField("type")
    private Integer type;

    @ApiModelProperty(value = "提现的佣金类型,1,0元,2,创客")
    @TableField("amount_type")
    private Integer amountType;

    @ApiModelProperty(value = "微信 openid")
    @TableField("open_id")
    private String openId;

    @ApiModelProperty(value = "提现人电话")
    @TableField("phone")
    private String phone;

    @ApiModelProperty(value = "备注")
    @TableField("remark")
    private String remark;

    @ApiModelProperty(value = "提现金额(分)")
    @TableField("amount")
    private Integer amount;

    @ApiModelProperty(value = "删除标记：0；未删除  1：已删除")
    @TableField("delete_flag")
    private Integer deleteFlag;

    @ApiModelProperty(value = "下单时间")
    @TableField("gmt_create")
    private Date gmtCreate;

    @ApiModelProperty(value = "更新时间")
    @TableField("gmt_modified")
    private Date gmtModified;

    @ApiModelProperty(value = "审核人ID")
    @TableField("audit_id")
    private Integer auditId;

    @ApiModelProperty(value = "审核时间")
    @TableField("audit_time")
    private Date auditTime;


    public static final String ID = "id";

    public static final String ORDER_NO = "order_no";

    public static final String USER_ID = "user_id";

    public static final String STATUS = "status";

    public static final String TYPE = "type";

    public static final String AMOUNT_TYPE = "amount_type";

    public static final String OPEN_ID = "open_id";

    public static final String PHONE = "phone";

    public static final String REMARK = "remark";

    public static final String AMOUNT = "amount";

    public static final String DELETE_FLAG = "delete_flag";

    public static final String GMT_CREATE = "gmt_create";

    public static final String GMT_MODIFIED = "gmt_modified";

    public static final String AUDIT_ID = "audit_id";

    public static final String AUDIT_TIME = "audit_time";

}
